package com.ruoyi.home.domain.xy;


import java.math.BigDecimal;
import java.util.Date;


/**
 * <p>
 * 
 * </p>
 *
 * @author liufeng
 * @since 2018-04-16
 */
@lombok.Setter
@lombok.Getter
@lombok.ToString
//@TableName("t_cw_payment_plan")
public class CwPaymentPlanEntity{

    private static final long serialVersionUID = 1L;

    /**
     * 主键自增
     */
//    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 付款单号
     */
    //@TableField("pay_order_no")
    private String payOrderNo;

    /**
     * 商户ID
     */
    //@TableField("business_id")
    private Long businessId;

    /**
     * 合同ID
     */
    //@TableField("contract_id")
    private Long contractId;

    /**
     * 合同编号
     */
    //@TableField("contract_no")
    private String contractNo;

    /**
     * 合同类型
,"1：收房合同，
2：出房合同"
     */
    //@TableField("contract_type")
    private Integer contractType;

    /**
     * 解约协议ID（解约时才有，收房是收房解约协议，出房是出房解约协议）
     */
    //@TableField("t_termination_id")
    private Long tTerminationId;

    /**
     * 楼盘ID
     */
    //@TableField("premise_id")
    private Long premiseId;

    /**
     * 小区(使用楼盘名)
     */
    //@TableField("premise_name")
    private String premiseName;

    /**
     * 业主ID
     */
    //@TableField("owner_id")
    private Long ownerId;

    /**
     * 业主姓名
     */
    //@TableField("owner_name")
    private String ownerName;

    /**
     * 租客ID(面向租客收款时才有)
     */
    //@TableField("tenant_id")
    private Long tenantId;

    /**
     * 租客姓名
     */
    //@TableField("tenant_name")
    private String tenantName;

    /**
     * 付款类型
,1:收房付款单 2：租务付款单 3：解约结算收款
     */
    //@TableField("pay_type")
    private Integer payType;

    /**
     * 付款状态
,"1、未付款；2、已付款
3、已中止"
     */
    //@TableField("pay_state")
    private Integer payState;

    /**
     * 账单类型（金融属性）,"1：收房贷变更
 2：退租变更
 3：普通账单(正常收房租务计划)"
     */
    //@TableField("bill_type")
    private Integer billType;

    /**
     * 款项（费用类型）
,1:水费 2：电费，3：煤/燃气费，80：租金，81：押金，90：解约结算，99:其它
     */
    //@TableField("item_type")
    private Integer itemType;

    /**
     * 其它款项
,款项为其它的时候，输入
     */
    //@TableField("other_item_name")
    private String otherItemName;

    /**
     * 支付金额（应付金额）
     */
    //@TableField("payment_amount")
    private BigDecimal paymentAmount;

    /**
     * 实付金额
     */
    //@TableField("real_payment_amount")
    private BigDecimal realPaymentAmount;

    /**
     * 选择账期（跟随的第几期房租对应的付款计划ID）,跟随一起付款的时候，应付日期选择设置为同一天
     */
    //@TableField("with_pay_plan_id")
    private Long withPayPlanId;

    /**
     * 账期开始日
     */
    //@TableField("payment_days_begin")
    private Date paymentDaysBegin;

    /**
     * 账期截止日
     */
    //@TableField("payment_days_end")
    private Date paymentDaysEnd;

    /**
     * 预定付款日期
     */
    //@TableField("payable_date")
    private Date payableDate;

    /**
     * 实际付款日期
     */
    //@TableField("paid_time")
    private Date paidTime;

    /**
     * 第几期（收房付款的时候）
     */
    //@TableField("pay_number")
    private Integer payNumber;

    /**
     * 支付方式
,1:快捷同，2：支付宝，3：微信，4：现金，5：银行卡转账，6：POS机刷卡，99：其它
     */
    //@TableField("pay_method")
    private Integer payMethod;

    /**
     * 其它支付方式
,支付方式为其它的时候，输入
     */
    //@TableField("other_pay_method")
    private String otherPayMethod;

    /**
     * 支付流水号
     */
    //@TableField("pay_flow_no")
    private String payFlowNo;

    /**
     * 租金
     */
    //@TableField("rental_price")
    private BigDecimal rentalPrice;

    /**
     * 税费
     */
    private BigDecimal tax;

    /**
     * 操作人
     */
    //@TableField("operation_user")
    private String operationUser;

    /**
     * 备注
     */
    private String remark;
    
    /**
     * 还款类型
     */
    //@TableField("repay_type")
    private Integer repayType;
    /**
     * 总期数
     */
    //@TableField("total_pay_number")
    private Integer totalPayNumber;
    

    /**
     * 预留字段1
     */
    private BigDecimal reserve1;

    /**
     * 预留字段2
     */
    private Integer reserve2;

    /**
     * 预留字段3
     */
    private String reserve3;

    /**
     * 预留字段4
     */
    private String reserve4;

    /**
     * 预留字段5
     */
    private String reserve5;

    /**
     * 删除标识
,0:未删除，1：删除
     */
    //@TableField("del_flg")
    private Boolean delFlg;

    /**
     * 创建用户ID
     */
    //@TableField("create_userid")
    private Long createUserid;

    /**
     * 创建时间
     */
    //@TableField("create_time")
    private Date createTime;

    /**
     * 更新用户ID
     */
    //@TableField("update_userid")
    private Long updateUserid;

    /**
     * 更新时间
     */
    //@TableField("update_time")
    private Date updateTime;


}
